package consultorio;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class Consultas {
Conectar con;
  public Consultas (){
    con = new Conectar();
  } 
  public void NuevaConsultas(String Consultas_codigos, String Consultas_Pacientes_rut, String Consultas_Medicos_rut, 
          String Consultas_fechaConsulta, String Consultas_diagnostico, String Consultas_tratamiento, String Consultas_tipoConsulta){
       try {            
            PreparedStatement pstm = con.getConnection().prepareStatement("insert into " + 
                    "Consultas (Consultas_codigos, Consultas_Pacientes_rut, Consultas_Medicos_rut, "
                    + "Consultas_fechaConsulta,Consultas_diagnostico,Consultas_tratamiento,Consultas_tipoConsulta) " +
                    " values(?,?,?,?)");            
            pstm.setString(1, Consultas_codigos);
            pstm.setString(2, Consultas_Pacientes_rut);
            pstm.setString(3, Consultas_Medicos_rut);                        
            pstm.setString(4, Consultas_fechaConsulta);
            pstm.setString(5, Consultas_diagnostico);
            pstm.setString(6, Consultas_tratamiento);
            pstm.setString(7, Consultas_tipoConsulta);
            pstm.execute();
            pstm.close();            
         }catch(SQLException e){
         System.out.println(e);
      }
   }
public Object [][] getDatos(){
      int registros = 0;
      try{         
         PreparedStatement pstm = con.getConnection().prepareStatement("SELECT count(1) as total FROM Consultas");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros = res.getInt("total");
         res.close();
      }catch(SQLException e){
         System.out.println(e);
      }
      
    Object[][] data = new String[registros][5];  
    try{    
         PreparedStatement pstm = con.getConnection().prepareStatement("SELECT " +
            " Consultas_codigo, Consultas_Paciente_rut, Consultas_Medicos_rut, Consultas_fechaConsulta,Consultas_disgnostico,"
                 + "Consultas_tratamiento,"
                 + "Consultas_tipoConsulta" +
            " FROM Consultas" +
            " ORDER BY Consultas_codigo");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String estCodigo = res.getString("Consultas_codigo");
            String estPersonasRut = res.getString("Consultas_Personas_rut");
            String estMedicosRut = res.getString("Consultas_Medicos_rut");
            String estFechaConsulta = res.getString("Consultas_fechaConsultas");
            String estDiagnosticos = res.getString("Consultas_diagnosticos");
            String estTratamiento = res.getString("Consultas_tratamiento");
            String estTipoConsulta = res.getString("Consultas_tipoConsulta");
            data[i][0] = estCodigo;            
            data[i][1] = estPersonasRut;            
            data[i][2] = estMedicosRut;            
            data[i][3] = estFechaConsulta;
            data[i][4] = estDiagnosticos; 
            data[i][5] = estTratamiento;
            data[i][6] = estTipoConsulta;       
            i++;
         }
         res.close();
          }catch(SQLException e){
         System.out.println(e);
    }
    return data;
 } 
 public void eliminarConsulta (String cod){
            try {                
                PreparedStatement pstm = con.getConnection().prepareStatement("delete from Consultas where Consultas_codigo= ?");            
                pstm.setString(1, cod);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            System.out.println(e);
            }            
   }
 public void updatePaciente(String Consultas_codigo, String Consultas_Pacientes_rut, String Consultas_Medicos_rut
         , String Consultas_fechaConsultas,String Consultas_diagnostico, String Consultas_tratamiento, String Consultas_tipoConsulta){
       try {            
            PreparedStatement pstm = con.getConnection().prepareStatement("update Consultas" +
            "Consultas_codigo= ? ," +
            "Consultas_Pacientes_rut = ? ," +
            "Consultas_Medicos_rut= ? ," +                    
            "Consultas_fechaConsultas= ? " +
            "Consultas_diagnostico= ? " +
            "Consultas_tratamiento= ? " +
            "Consultas_tipoConsulta= ? " +
            "where Consultas_codigo = ? ");            
            pstm.setString(1, Consultas_codigo);                   
            pstm.setString(2, Consultas_Pacientes_rut);
            pstm.setString(3, Consultas_Medicos_rut);
            pstm.setString(4, Consultas_fechaConsultas);
            pstm.setString(5, Consultas_diagnostico);
            pstm.setString(6, Consultas_tratamiento);
            pstm.setString(7, Consultas_tipoConsulta);
            pstm.setString(5, String.valueOf(Consultas_codigo));
            pstm.execute();
            pstm.close();            
         }catch(SQLException e){
         System.out.println(e);
      }
   }
}
